Imports CapaDeDatos
Imports System.Data.SqlClient
Public Class nTalonario
    Private TblTalonario As dTalonario = New CapaDeDatos.dTalonario()
    Private TipoTalonario As nTipoTalonario = New CapaDeNegocios.nTipoTalonario()
    Private Asignaciones As CapaDeNegocios.nAsignacionesDeRemitosTemp = New CapaDeNegocios.nAsignacionesDeRemitosTemp
    Private Alerta As CapaDeDatos.dAlerta = New CapaDeDatos.dAlerta
    Public Function Existe(ByVal Numero_Desde As String, ByVal Numero_Hasta As String, ByVal IdTipoTalonario As String) As Boolean
        Return TblTalonario.Existe(Numero_Desde, Numero_Hasta, IdTipoTalonario)
    End Function


    Public Function Insertar(ByVal Numero_Desde As String, ByVal Numero_Hasta As String, ByVal Fecha_Vencimiento As String, ByVal IdTipoTalonario As String) As Boolean
        If (Numero_Desde <> "" And Numero_Hasta <> "" And IdTipoTalonario <> "") Then
            Alerta.Insertar("VENCIMIENTO - TALONARIO", "Numeracion desde :" & Numero_Desde & " Hasta" & Numero_Hasta, "", "", "", "", "")
            Return TblTalonario.Insertar(Numero_Desde, Numero_Hasta, Fecha_Vencimiento, IdTipoTalonario)
        End If
    End Function
    Public Function Eliminar(ByVal IdTalonario As String) As Boolean
        If Asignaciones.BuscarFiltrado("", "", "", IdTalonario, "").Tables(0).Rows.Count = 0 Then
            Return TblTalonario.Eliminar(IdTalonario)
        Else
            Return False
        End If
    End Function
    Public Function Modificar(ByVal IdTalonario As String, ByVal Numero_Desde As String, ByVal Numero_Hasta As String, ByVal Fecha_Vencimiento As String, ByVal Estado As String, ByVal IdTipoTalonario As String) As Boolean
        Return TblTalonario.Modificar(IdTalonario, Numero_Desde, Numero_Hasta, Fecha_Vencimiento, Estado, IdTipoTalonario)
    End Function
    Public Function BuscarFiltrado(ByVal IdTalonario As String, ByVal Numero_Desde As String, ByVal Numero_Hasta As String, ByVal Fecha_Alta As String, ByVal Fecha_Vencimiento As String, ByVal Estado As String, ByVal IdTipoTalonario As String) As DataSet
        Dim dts As DataSet
        dts = TblTalonario.BuscarFiltrado(IdTalonario, Numero_Desde, Numero_Hasta, Fecha_Alta, Fecha_Vencimiento, Estado, IdTipoTalonario)
        dts.Tables(0).Columns.Add("DescripcionLetra")
        dts.Tables(0).Columns.Add("DescripcionEstado")
        dts.Tables(0).Columns.Add("Rango")
        Dim i As Integer
        For i = 0 To dts.Tables(0).Rows.Count - 1
            dts.Tables(0).Rows(i)("DescripcionLetra") = TipoTalonario.DescripcionLetra(dts.Tables(0).Rows(i)("IdTipoTalonario").ToString()).Tables(0).Rows(0)("DescripcionLetra").ToString()
            dts.Tables(0).Rows(i)("Rango") = dts.Tables(0).Rows(i)("Numero_Desde").ToString() + " - " + dts.Tables(0).Rows(i)("Numero_Hasta").ToString()
            Try
                If dts.Tables(0).Rows(i)("Estado").ToString() = "0" Then
                    dts.Tables(0).Rows(i)("DescripcionEstado") = "Pendiente"
                End If
                If dts.Tables(0).Rows(i)("Estado").ToString() = "1" Then
                    dts.Tables(0).Rows(i)("DescripcionEstado") = "Asignado"
                End If
                If dts.Tables(0).Rows(i)("Estado").ToString() = "2" Then
                    dts.Tables(0).Rows(i)("DescripcionEstado") = "Vencido"
                End If
                If dts.Tables(0).Rows(i)("Estado").ToString() = "3" Then
                    dts.Tables(0).Rows(i)("DescripcionEstado") = "Activo"
                End If
                If dts.Tables(0).Rows(i)("Estado").ToString() = "4" Then
                    dts.Tables(0).Rows(i)("DescripcionEstado") = "Eliminado"
                End If
                If dts.Tables(0).Rows(i)("Estado").ToString() = "5" Then
                    dts.Tables(0).Rows(i)("DescripcionEstado") = "Completo"
                End If
            Catch ex As Exception
                dts.Tables(0).Rows(i)("DescripcionEstado") = "Estado desconocido."
            End Try
        Next

        Return dts
    End Function

End Class
